package com.baitiaojun.bulletscreen.service;

import com.baitiaojun.api.domain.video.BulletScreen;
import com.baitiaojun.api.exception.ConditionException;

import java.text.ParseException;
import java.util.List;
import java.util.Map;

/**
 * @类名 BulletScreenService
 * @描述 TODO
 * @作者 白条君
 * @创建日期 2022/12/31 17:20
 * @版本 1.0
 */
public interface BulletScreenService {

    void saveBulletScreen(BulletScreen bulletScreen) throws ConditionException;

    List<BulletScreen> getBulletScreen(Long videoId, String startTime, String endTime) throws ConditionException, ParseException;

    void batchSyncRedis(Long videoId, List<BulletScreen> bulletScreens);

    void syncRedis(Long videoId, Map<String, Object> content);

    List<BulletScreen> filter(List<BulletScreen> bulletScreens, Map<String, Object> params);

    void batchSaveBulletScreenMqDuplicate(List<BulletScreen> bulletScreens) throws ConditionException;
}
